#!/usr/bin/env python3
# -*- coding: utf-8 -*-

# 列表生成式：是Python内置的非常简单却强大的可以用来创建list的生成式。


print('没有列表生成式之前')
print(list(range(1,11))) # [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

# 列表生成式：写列表生成式时，把要生成的元素x * x放到前面，后面跟for循环。
print([x for x in range(1,11)]) # [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

# 平方
print([x * x for x in range(1,11)]) # [1, 4, 9, 16, 25, 36, 49, 64, 81, 100]

# 过滤
print([x for x in range(1,11) if x%2==0]) # [2, 4, 6, 8, 10]

# 嵌套for
print([x+y for x in 'AB' for y in 'DE']) # ['AD', 'AE', 'BD', 'BE']

L = ['Hello', 'World', 18, 'Apple', None]
print([x.lower() for x in L if isinstance(x,str)]) # ['hello', 'world', 'apple']
